package com.heyqing.medium.day6;

/**
 * ClassName:HammingDistance
 * Package:com.heyqing.medium.day6
 * Description:
 *
 * @Date:2024/10/8
 * @Author:Heyqing
 */
public class HammingDistance {
    public int hammingDistance(int x, int y) {
        int count = 0;
        for (int i = 0; i < 32; i++) {
            if ((x  & 1) != (y & 1)) count++;
            x >>= 1;
            y >>= 1;
        }
        return count;
    }
//    String xBin = Integer.toBinaryString(x);
//    String yBin = Integer.toBinaryString(y);
//    int xLen = xBin.length();
//    int yLen = yBin.length();
//        if (xLen > yLen) {
//        StringBuilder sb = new StringBuilder(yBin);
//        sb.reverse();
//        for (int i = 0; i < xLen - yLen; i++) {
//            sb.append(0);
//        }
//        yBin = sb.reverse().toString();
//    } else {
//        StringBuilder sb = new StringBuilder(xBin);
//        sb.reverse();
//        for (int i = 0; i < yLen - xLen; i++) {
//            sb.append(0);
//        }
//        xBin = sb.reverse().toString();
//    }
//    int count = 0;
//        for (int i = 0; i < xBin.length(); i++) {
//        if (xBin.charAt(i) != yBin.charAt(i)) count++;
//    }
//        return count;
}
